package grafica.moderador.controladores;

import grafica.moderador.ventanas.VentanaMenuModerador;
import grafica.moderador.ventanas.VentanaReanudarPartida;

import java.io.Serializable;
import java.rmi.RemoteException;

import logica.datatypes.Partida.DataPartida_R4;
import logica.excepciones.PartidaException;
import persistencia.PersistenciaException;

public class ControladorReanudarPartida implements Serializable{
	private VentanaMenuModerador ventanaMenuModerador;
	private VentanaReanudarPartida ventanaReanudarPartida;
	private ControladorMenuModerador controladorMenuModerador ;
	private final static long serialVersionUID = 1;
	
	public ControladorReanudarPartida(VentanaReanudarPartida ventanaReanudarPartida,ControladorMenuModerador controladorMenuModerador){	
		this.controladorMenuModerador = controladorMenuModerador;
		this.ventanaReanudarPartida = ventanaReanudarPartida;

	}
	
	public void reanudarPartida(String partida){
			
		try{
			controladorMenuModerador.getFachadaModerador().reanudarPartida(partida);
			//controladorMenuModerador.setJTextPane("Info: La partida se ha reanudado correctamente");
//++++			controladorMenuModerador.habilitarBotones();
		} catch (RemoteException e1) {
			controladorMenuModerador.setJTextPane("Error RemoteException");
		} catch (PartidaException e2) {
			controladorMenuModerador.setJTextPane(e2.darMensaje());
		}
	}
	
	
	public void listarPartidasNoEnCurso() {
		try{
			DataPartida_R4[] dataPartida_R4 = controladorMenuModerador.getFachadaModerador().listarPartidasNoEnCurso();
			
			for (int i = 0; i < dataPartida_R4.length; i++) {
				ventanaReanudarPartida.cargarItemCombo(dataPartida_R4[i].getCodigo());
			}
			
		} catch (RemoteException e1) {
			controladorMenuModerador.setJTextPane(e1.getMessage());
		}
	}
	
	

	
}
